package com.lemon.exam.service;

import com.lemon.exam.common.crud.BaseService;
import com.lemon.exam.common.entity.view.ViewClassGradeUserJob;
import com.lemon.exam.common.entity.vo.SelectVO;
import com.lemon.exam.common.entity.vo.TreeSelectVO;
import com.lemon.exam.entity.po.ClassPO;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;

import java.util.List;
import java.util.Map;

/**
 * 班级表 服务接口
 *
 * @author Lemon
 * @since 2025/04/20 22:06:24
 */
public interface IClassService extends BaseService<ClassPO, Long> {
    Flux<String> findClassNameByUserId(Long userId);

    Flux<SelectVO> findGradeSelect();

    Flux<ViewClassGradeUserJob> findAllClassGrade();

    Mono<Map<Long, String>> findClassNameGradeNameById(List<Long> idList);
}